Skip to content

Pass stream to device_scalar::value() calls. - #259

Merged
rapids-bot[bot] merged 4 commits into
NVIDIA:branch-21.08from
harrism:fix-device_scalar-explicit-stream
Jun 8, 2021
Merged

rapids-bot[bot] merged 4 commits into
NVIDIA:branch-21.08from
harrism:fix-device_scalar-explicit-stream

Conversation

@harrism

@harrism harrism commented Jun 8, 2021

Copy link
Copy Markdown
Contributor

In comms/test.hpp device_scalar::value was not being passed an explicit stream, which means that the default stream was being synced. rapidsai/rmm#789 will remove the default from this parameter, and would have therefore broken the RAFT build. So this PR fixes the oversynchronization and ensures RAFT will build after the RMM PR is merged.

Note this PR includes the cmake changes from #258 (just so I could build locally). Once #258 is merged this PR's changes will be simplified.

@dantegd dantegd left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes look good to me, same comment about merging 21.08 so CI passes

@harrism

harrism commented Jun 8, 2021

Copy link
Copy Markdown
Contributor Author

Changes look good to me, same comment about merging 21.08 so CI passes

Done.

@dantegd dantegd added improvement Improvement / enhancement to an existing function non-breaking Non-breaking change labels Jun 8, 2021
rapids-bot Bot pushed a commit to rapidsai/rmm that referenced this pull request Jun 8, 2021
This PR refactors `device_scalar` to use a  single-element `device_uvector` for its storage. This simplifies the implementation of device_scalar. Also changes the API of `device_scalar` so that its asynchronous / stream-ordered methods use the same API style (with explicit stream parameter) as `device_uvector` and `device_buffer`.

Closes #570

This is a breaking change. When it is merged, PRs are likely to need to be merged immediately in other libraries to account for the API changes. 

 - [x] cuDF: NVIDIA/cudf#8411
 - [x] cuGraph: rapidsai/cugraph#1637
 - [x] RAFT: NVIDIA/raft#259  
 - [x] ~cuML~ (unused)
 - [x] ~cuSpatial~ (unused)

Authors:
  - Mark Harris (https://github.com/harrism)

Approvers:
  - Rong Ou (https://github.com/rongou)
  - Jake Hemstad (https://github.com/jrhemstad)

URL: #789
@harrism

harrism commented Jun 8, 2021

Copy link
Copy Markdown
Contributor Author

@gpucibot merge

@harrism

harrism commented Jun 8, 2021

Copy link
Copy Markdown
Contributor Author

I don't think I can merge.

@ajschmidt8

Copy link
Copy Markdown
Member

@gpucibot merge

@rapids-bot
rapids-bot Bot merged commit f65ed02 into NVIDIA:branch-21.08 Jun 8, 2021
loulankxh pushed a commit to loulankxh/raft that referenced this pull request Oct 14, 2025
In comms/test.hpp `device_scalar::value` was not being passed an explicit stream, which means that the default stream was being synced. rapidsai/rmm#789 will remove the default from this parameter, and would have therefore broken the RAFT build. So this PR fixes the oversynchronization and ensures RAFT will build after the RMM PR is merged.

Note this PR includes the cmake changes from NVIDIA#258 (just so I could build locally). Once NVIDIA#258 is merged this PR's changes will be simplified.

Authors:
  - Mark Harris (https://github.com/harrism)

Approvers:
  - Dante Gama Dessavre (https://github.com/dantegd)
  - Chuck Hastings (https://github.com/ChuckHastings)

URL: NVIDIA#259
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CMake cpp improvement Improvement / enhancement to an existing function non-breaking Non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants